package lmscript.postscript.syntax;

import lmscript.postscript.syntax.stack.OperandStack;

public abstract class RelationalOperator extends PSOperator {
	public static Class[] operators = new Class[] { Equal.class, NotEqual.class, GreaterThan.class,
			LessThan.class, And.class, Not.class, OR.class, XOR.class, True.class, False.class,
			BitShift.class };

	RelationalOperator(String name) {
		super(name);
	}
}

class Equal extends RelationalOperator {

	public Equal() {
		super("eq");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class NotEqual extends RelationalOperator {

	public NotEqual() {
		super("ne");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class GreaterThan extends RelationalOperator {

	public GreaterThan() {
		super("gt");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class LessThan extends RelationalOperator {

	public LessThan() {
		super("lt");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class And extends RelationalOperator {

	public And() {
		super("and");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Not extends RelationalOperator {

	public Not() {
		super("not");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class OR extends RelationalOperator {

	public OR() {
		super("or");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class XOR extends RelationalOperator {

	public XOR() {
		super("xor");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class True extends RelationalOperator {

	public True() {
		super("true");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class False extends RelationalOperator {

	public False() {
		super("false");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class BitShift extends RelationalOperator {

	public BitShift() {
		super("bitshift");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}